﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using PiscoSourWeb.Models;
using PiscoSourDominio;
namespace PiscoSourWeb.Controllers
{
    public class ReservaController : Controller
    {
        private ReservaWS.ReservasClient reservaWS = new ReservaWS.ReservasClient();
       
        public ActionResult Index()
        {
            var datos = new ModelDesigner().ObtenerReservasCliente(((Cliente)Session["objAutenticado"]).intCliente+"");
            return View(datos);
        }


       public ActionResult Register()
        {
            if (Session["Autenticado"].ToString() == "3")
            {
                ViewBag.Titulo = "Bienvenido Sr/a: " + ((Cliente)Session["objAutenticado"]).vchNombre + " " + ((Cliente)Session["objAutenticado"]).vchApellido;
                ViewBag.NombreCliente = ((Cliente)Session["objAutenticado"]).vchNombre + " " + ((Cliente)Session["objAutenticado"]).vchApellido;
            }
            
            var datos = new ModelLocal().ListarLocales();
            ViewBag.intCodLocal = new SelectList(datos, "intCodLocal", "vchNombre");
            return View();
        }

       [HttpPost]
       public ActionResult Register(Reserva objReserva)
       {
           if (ModelState.IsValid)
           {
               objReserva.intCliente = ((Cliente)Session["objAutenticado"]).intCliente;
               objReserva.blnEstado = "1";
               reservaWS.InsertarReserva(objReserva);
               return Redirect("/Reserva/List/"+objReserva.intCliente);
           }

           if (Session["Autenticado"].ToString() == "3")
           {
               ViewBag.Titulo = "Bienvenido Sr/a: " + ((Cliente)Session["objAutenticado"]).vchNombre + " " + ((Cliente)Session["objAutenticado"]).vchApellido;
               ViewBag.NombreCliente = ((Cliente)Session["objAutenticado"]).vchNombre + " " + ((Cliente)Session["objAutenticado"]).vchApellido;
           }

           var datos = new ModelLocal().ListarLocales();
           ViewData.Model = objReserva;
           ViewBag.locales = new SelectList(datos, "intCodLocal", "vchNombre");
           return View();
       }

        public ActionResult ListDelDia()
        {
            /*ClienteWS.ClientesClient clienteWS = new ClienteWS.ClientesClient();
            ViewBag.test = "Prueba";
            var list = clienteWS.ListarClientes();
            return View();*/
            var datos = new ModelDesigner().ObtenerReservasDeldia();
            return View(datos);

        }

        public ActionResult List(int id)
        {
            var datos = new ModelDesigner().ObtenerReservasCliente(id.ToString());
            return View(datos);
        }
            
        public ActionResult ListReserva() {
            if (Session["Autenticado"].ToString() != "2")
            {
                return RedirectToAction("LoginRest");
            }

            ViewBag.Titulo = "Bienvenido Usuario: " + ((Usuario)Session["objAutenticado"]).vchUsuario;
            var datos = new ModelDesigner().ObtenerReservasTotalRestaurante(((Local)Session["objAutenticadoLocal"]).intCodLocal + "");
            
            return View(datos);
        }

    }
}
